As is known, a dual-mode mobile communication device is an apparatus designed to connect to different wireless communication networks, in particular to both cellular and non-cellular radio communication networks for voice and data communication. For example, a third-generation (3G) dual-mode mobile communication device can provide connectivity to the Internet through both a UMTS/W-CDMA cellular radio communication network and a WLAN (Wi-Fi) radio communication network based for example on the IEEE 802.11 specifications. The availability of dual-mode mobile communication devices providing both cellular (2G/3G) and WLAN connectivity, together with the worldwide deployment of WLAN hotspots, has raised the interest in possible solutions for the integration (inter-operability) of WLAN communication systems with 2.5G and 3G cellular communication systems, with the purpose of providing dual-mode mobile communication devices with the capability to employ multiple radio access networks (multiple-access capability) and to handover between different communication networks with a negligible impact on the quality of service (QoS) perceived by end-users (vertical handover).
Several approaches can be considered for combining different radio access technologies (RATs) depending on the level of integration that is required between the different networks. When the integration between the different RATs is tight, service provisioning is more efficient and the choice of the RAT that can provide the best radio access conditions is faster and easier. Another advantage of a tight RAT integration is the reduced time required for vertical handover between two different communication networks with a small impact on the QoS perceived by end-users. On the other hand, a high level of integration between two different communication networks requires a greater effort in the definition of interfaces and mechanisms that allow the necessary data exchange and signalling between the different RATs. In this case integration occurs at L2/L3 layer of the ISO-OSI protocol stack, as proposed for example in the Unlicensed Mobile Access (UMA) standard.
Even when there is no real integration between the RATs, vertical handover is possible thanks to the co-existence of the network access technologies under the Internet Protocol (IP). However, if no countermeasures are taken, problems arise when the user switches between different network access technologies and/or network access providers: since IP addresses are assigned to a fixed location in the network, a new IP address should be assigned when network location (access technology and/or provider) changes. This makes a transparent mobile access to the Internet impossible, leading to the IP applications to be restarted, with a consequent loss of the current session. Moreover, if the Transmission Control Protocol (TCP) is used in addition to the IP, as in the majority of IP links, the connections are further designated by a quadruplet of numbers containing indications about the IP addresses and the port numbers in the source and destination hosts. If one of these four numbers is changed, this causes an interruption of the TCP/IP connection.
In order to solve these problems, different techniques have been proposed which can be classified based on the layer of the ISO-OSI protocol stack at which the solution is provided, in particular can be classified into those providing a solution at the network layer (e.g., IP layer), those providing a solution at the transport layer (e.g., TCP/UDP (User Datagram Protocol), and those providing a solution at higher layers (e.g., the socket or application layer).
A solution that attempts to solve the problem of end-to-end host mobility at the network layer is represented by the so-called Mobile IP, which is an open standard, defined by the Internet Engineering Task Force (IETF) RFC 2002, that is part of both IPv4 and IPv6 standards and that allows users to keep the same IP address, stay connected, and maintain ongoing applications while roaming between IP networks. Mobile IP provides ubiquitous connectivity for users, and is scalable for the Internet because it is based on IP.
In more detail, Mobile IP attempts to solve host mobility problems at the network layer by using a level of routing indirection or triangular routing of all packets from a correspondent host to a mobile node.
This routing indirection is accomplished through the use of “Home Agents” and “Foreign Agents” that are proxies providing services to the mobile node. Although Mobile IP handles host mobility and reachability problems well, it does not handle transport connection failures (e.g., any changes to the transport endpoints leads to a session failure). Typically, applications depending on transport session connectivity need to be restarted and a new transport connection has to be established. Other disadvantages of Mobile IP include non-optimized triangular routing and extensive use of IP tunneling. Due to security reasons, service providers typically disallow tunneled packets. Furthermore, due to the increased frequency of Denial-Of-Service (DOS) attacks, incoming packets are ingress filtered by service providers to make sure that they are actually from the networks that they claim to be from and block those that spoof source addresses. Although the ingress filtering problem might be solved by using reverse tunneling, reverse tunneling leads to further sub-optimal use of networking resources and adds extra packet delays between the two endpoints.
Solutions that attempt to solve the problem of end-to-end host mobility at the transport or higher layers typically either split the connection into multiple segments, modify a standard TCP implementation by adding new messages and states to the TCP state machine, or trick the application into believing that the connection still exists while an attempt is made to re-establish the connection.
For example, a solution that works at the transport layer level is the so-called Mobile Sockets (MSOCKS) which uses a split-connection proxy for connection redirection. MSOCKS inserts a proxy in the communication path between the mobile node and its correspondent hosts and uses a TCP splice mechanism to break the connection into multiple segments and thus hide the mobility issues of the mobile node from the correspondent hosts. However, adding a communication path proxy might significantly degrade service.
Other techniques at the transport layer level introduce a library between the application and the socket Application Programming Interface (API) that preserves the illusion of a single, unbroken connection over successive connection instances. All these approaches require linking the application with their respective (specific) libraries. The illusion of an unbroken connection is obtained by tricking the application into believing that the transport session is still active, even though the transport session has closed. The intermediate library then attempts to re-establish the (new) transport connection and maps the new transport connection to the application using it. The implementation of, and operational difficulties involved with, such solutions include virtualizing mechanisms like I/O polling, asynchronous and non-blocking I/O processes, the need for timers and signal handlers, and the need for additional process control interfaces such as “wait”, “kill”, and “exec”.
A solution that works at the application layer level uses the Session Initiation Protocol (SIP). In this case, if the terminal needs to change its IP address during a session it can inform its correspondent host by sending a new INVITE message specifying the new IP address and the updated session parameters. Being at the application layer, SIP relies on the protocols and mechanism in the lower layer to handle the physical network connection. Therefore, additional procedures are needed in order to monitor the radio link layer quality and to attach the terminal to the new wireless network (thus obtaining the new IP address) before the SIP re-INVITE message is sent. Moreover, this mechanism is available only for those applications that rely on SIP for the management of the session and that are designed in order to support this IP change procedure.
A further solution provides a mechanism to achieve end-to-end host mobility by modifying the transport layer protocol and end applications. The modification adds new states and semantics to the TCP finite state machine and defines new TCP options to negotiate the migration of the connection. Other techniques exist that involve either changing the TCP header, packet format, protocol semantics, or adding additional headers in the packets. However, the disadvantage of these techniques is that the end-user applications have to be aware of the new feature to make use of it, implying required changes to those existing applications.
WO 02/43348 discloses a method for handover between heterogeneous communications networks, in particular for maintaining communication between a first mobile unit and a second unit, where the first unit communicates via a first communications network and the second unit communicates via a second communications network. The first unit includes a first protocol stack and the second unit includes a second protocol stack. The first unit includes a first session layer which is adapted to function as an interface between the first protocol stack and first software components acting within the first unit. Similarly, the second unit includes a second session layer which is adapted to function as an interface between the second protocol stack and second software components acting within the second unit. The first unit includes one or more first communications hardware with associated drive routines adapted to different communications networks. When the first unit switches from a first communications network to a third communications network, the first session layer functions to maintain communication by selecting first communications hardware and drive routine required for the third communications network. The respective identities of the first and second units are maintained by the first and the second session layer and these identities are retained during switching of communications networks by the first unit.
WO 2005/076651 discloses a method and a system for seamless handover of mobile devices in heterogeneous networks. A mobile device is moved between different topological network locations and transmits and/or receives data by means of different network access technologies without the data transfer between a Client IP application, running on the mobile device, and a Server IP application being interrupted, wherein the Client IP application of the mobile device makes a request with first data units to a client-service module, wherein the client service module creates second data units based on the received first data units and makes a request to a server-service module with the second data units, wherein the server-service module creates third data units based on the received second data units and makes a request to the Server IP application with the third data units to handle the data exchange between the Client IP application and the Server IP application.
A solution that works at the socket layer level and relates to an endpoint address change in a packet network is disclosed in US 2005/0198384, wherein a seamless transport endpoint mobility (STEM) architecture migrates a transport connection endpoint from an old IP address to a new IP address without loss of the session. The migration process is negotiated between two endpoints themselves. Transport endpoint mobility includes communication between two STEM daemons, one STEM daemon in each endpoint, which dynamically updates kernel data structures (e.g., elements of a 5-tuple associated with a TCP/IP application) associated with the session. Migration is transparent to the application using the underlying transport connection for data transfer.
WO 02/103978 discloses a method for mobile IP in heterogeneous networks in which an interface administration module of the mobile node checks the mobile node for available physical network interfaces, draws up a lookup table with the available and configurable physical network interfaces, and links itself to one of the available physical network interfaces. IP applications of the mobile nodes access the heterogeneous networks via a virtual IP network interface generated in the mobile node, the permanent virtual IP network interface being connected to the present network via the interface administration module. During the change of physical network interfaces of the mobile node, the linking of the permanent virtual IP network interface to the network is updated by means of the interface administration module based on the lookup table. In particular, the invention relates to a method for mobile nodes with real-time applications in heterogeneous networks.
WO 03/065654 discloses Internet-protocol-based wireless communication arrangements to allow mobile devices such as Personal Digital Assistants or mobile phones to connect to the Internet or another IP-based network using WPAN and WLAN infrastructures or cellular systems like GPRS or 3G. Wireless network driver software architecture is proposed, named Multi-standard Wireless Adaptation Layer (MWAL) and is for client devices MT that may be portable, need to efficiently switch from one wireless standard to another and that must be able to stay connected and reachable in the Internet or other IP based network even when switching between wireless communication standards. The technique is a layer-2 technique suitable for vertical markets and proprietary solutions, in which the MWAL enables the client device MT to perform vertical handovers between wireless communications standards.